// ============================== 导入依赖 ============================== //

import state from '@admin/views/Operation/Questionnaire/QuestionnaireList/store/state'
import API from './API'

const { WORD } = state.MAP

// ============================== 导出状态集 ============================== //

export default {
  // —————————————————————————————— 常量状态 —————————————————————————————— //

  /**
   * 接口
   */
  API: {
    MENU: ['__详情__', WORD], // 菜单
    ...state.API,
    ...API,
  },

  /**
   * 映射
   */
  MAP: {
    // 词语
    WORD,

    // 必须的字段，有值才会显示弹窗
    REQUIRED_KEY: 'id',

    // 弹窗属性
    MODEL_PROPS: {
      huge: true,
      title: `${WORD}详情`,
      bgClose: true,
      noFooter: true,
    },

    hoverNo: 0, // 鼠标悬浮的问题题号
  },

  /**
   * 字典
   */
  DICT: {
    ...state.DICT,

    /**
     * 页签
     */
    TAB: [
      ['statistic', '统计分析'],
      ['answer', '答卷列表'],
    ],
  },

  /**
   * 首要开关
   *
   * 1. 初始化完成时调用
   * 2. 提交后刷新时调用
   */
  MAIN_START: 'startOne', // 'startInfo' 或 'startList' 或 'startOne' 或 ''

  /**
   * 初始单项
   *
   * 1. 初始存在，才能响应
   * 2. setOne() 合并时使用
   * 3. openAdd() 新增时使用
   */
  INIT_ONE: {
    ...state.INIT_ONE,
    tab: 'statistic',

    root: state.INIT_ONE, // 根问卷

    periodId: '', // 当前周期的子问卷 ID
    periodList: [ // 期数列表
      {
        id: '', // 子问卷 ID
        time: '', // 时间
        title: '', // 子问卷标题
      },
    ],
  },
}
